/*
 * Filename:    CodeListDAO.java
 * Copyright:   2014 中国平安保险（集团）股份有限公司 版权所有
 * Company:     平安科技养老险及健康险系统开发部
 * Create at:   2014年10月17日
 */
package com.paic.mhis.hcpms.common.community.intergration.dao;

import java.util.List;
import java.util.Map;

import com.paic.mhis.common.base.dto.LabelDTO;
import com.paic.mhis.hcpms.common.community.dto.CodeListDTO;
import com.paic.mhis.hcpms.common.community.dto.HcpmsContactInfoDTO;
import com.paic.mhis.hcpms.common.community.dto.MedicalDeptDTO;
import com.paic.mhis.hcpms.common.community.dto.MedicalOrgInfoDTO;

/**
 * 
 * @author EX-XIEQI001
 * 
 */
public interface CommunityDAO {

	/**
	 * 获取所有数据字典数据
	 * 
	 * @return
	 */
	public List<CodeListDTO> queryCodeListAll();


	/**
	 * 获取数据字典数据 
	 * @param map
	 * @return
	 */
	public List<CodeListDTO> queryCodeList(Map<String, Object> map);
	/**
	 * 机构信息
	 * 
	 * @param map
	 *            map
	 * @return list
	 */
	public List<MedicalOrgInfoDTO> queryMedicalOrgInfoList(Map<String, Object> map);
	/**
	 * 机构信息一级及以下（综合评价）
	 * 
	 * @param map
	 *            map
	 * @return list
	 */

	public List<MedicalOrgInfoDTO> queryNewMedicalOrgInfoList1(Map<String, Object> paramMap);
	/**
	 * 机构信息
	 * 
	 * @param map
	 *            map
	 * @return list
	 * 
	 */
	public List<MedicalOrgInfoDTO> queryMedicalOrgInfoListByManpower(Map<String, Object> map);

	/**
	 * 科室信息
	 * 
	 * @param map
	 *            orgCode 医疗机构编码
	 * @return
	 */
	public List<MedicalDeptDTO> queryMedicalDeptInfoList(Map<String, Object> map);

	/**
	 * Description:
	 * 
	 * @param paramMap
	 *            paramMap
	 * @return List<MedicalOrgInfoDTO>
	 */
	public List<MedicalOrgInfoDTO> queryNewMedicalOrgInfoList(Map<String, Object> paramMap);

	/**
	 * Description: 获取医疗结构列表
	 * 
	 * @param paramMap
	 *            参数
	 * @return 返回list
	 */
	public List<MedicalOrgInfoDTO> queryMedicalOrgInfoListWithLevel(Map<String, Object> paramMap);

	/**
	 * Description:
	 * 
	 * @param map
	 * @return List<HcpmsContactInfoDTO>
	 * 
	 */
	public List<HcpmsContactInfoDTO> queryWorkDepList(Map<String, Object> map);

	/**
	 * Description:
	 * 
	 * @param paramMap
	 *            paramMap
	 * @return List<CodeListDTO>
	 */
	public List<CodeListDTO> getProvincialOrgDepList(Map<String, Object> paramMap);

	public List<LabelDTO<String>> getAllFiledDict(Map<String, Object> param);
}
